An Injection of Tree Awareness: Adding Staircase Join to PostgreSQL
نویسندگان
چکیده
The syntactic wellformedness constraints of XML (opening and closing tags nest properly) imply that XML processors face the challenge to efficiently handle data that takes the shape of ordered, unranked trees. Although RDBMSs have originally been designed to manage table-shaped data, we propose their use as XML and XPath processors. In our setup, the database system employs a relational XML document encoding, the XPath accelerator [1], which maps information about the XML node hierarchy to a table, thus making it possible to evaluate XPath expressions on SQL hosts. Conventional RDBMSs, nevertheless, remain ignorant of many interesting properties of the encoded tree data, and were thus found to make no or poor use of these properties. This is why we devised a new join algorithm, the staircase join [2], which incorporates the tree-specific knowledge required for an efficient SQLbased evaluation of XPath expressions. In a sense, this demonstration delivers the promise we have made at VLDB 2003 [2]: a notion of tree awareness can be injected into a conventional diskbased RDBMS kernel in terms of staircase join. The demonstration features a side-by-side comparison of both, an original and a staircase-join enhanced instance of PostgreSQL [4]. The required changes to PostgreSQL were local, the achieved effect, however, is significant: the demonstration proves that this injection of tree awareness turns PostgreSQL into a highperformance XML processor that closely adheres to the XPath semantics. 2 Staircase Join
منابع مشابه
An Injection with Tree Awareness Adding Staircase Join to PostgreSQL
The XPath accelerator (“pre/post numbering”) has proven to be an efficient encoding to losslessly store XML data in relational databases. Conventional RDBMSs, however, remain ignorant of interesting properties of the encoded tree data, and make thus no or poor use of these properties. At VLDB 2003 we devised a new join algorithm, staircase join, that encapsulates tree-specific knowledge and can...
متن کاملEnhancing the Tree Awareness of a Relational DBMS: Adding Staircase Join to PostgreSQL
Given a suitable encoding, any relational DBMS is able to answer queries on tree-structured data. However, conventional relational databases are generally not (made) aware of the underlying tree structure and thus fail to make full use of the encoded information. The staircase join is a new join algorithm intended to enhance the tree awareness of a relational DBMS. It was developed to speed up ...
متن کاملStaircase Join: Teach a Relational DBMS to Watch its (Axis) Steps
Relational query processors derive much of their effectiveness from the awareness of specific table properties like sort order, size, or absence of duplicate tuples. This text applies (and adapts) this successful principle to database-supported XML and XPath processing: the relational system is made tree aware, i.e., tree properties like subtree size, intersection of paths, inclusion or disjoin...
متن کاملStaircase Join: Teach a relational DBMS to Watch its (Axis) Steps. 2003
Relational query processors derive much of their effectiveness from the awareness of specific table properties like sort order, size, or absence of duplicate tuples. This text applies (and adapts) this successful principle to database-supported XML and XPath processing: the relational system is made tree aware, i.e., tree properties like subtree size, intersection of paths, inclusion or disjoin...
متن کامل